package com.freesky.common.constant;

/**
 * Redis分布式锁常量定义
 *
 * @author HuangSZ
 * @version 1.0
 * @date 2021/3/23 17:47
 */
public class RedisLockConstant {

    /**
     * 10分钟
     */
    public static final long LOCK_TIME = 60 * 10;

    /**
     * 数据录入模块导入锁(模块内全局)
     * 格式：DATA_INPUT#模块序号
     */
    public static final String DATA_INPUT_LOCK = "DATA_INPUT#%s";

    /**
     * 用户管理的使用-导出锁
     */
    public static final String EXPORT_USER_LOCK = "EXPORT_USER_LOCK#%s";

    /**
     * 用户管理的使用-导出锁
     */
    public static final String IMPORT_ORG_LOCK = "IMPORT_ORG_LOCK#%s";

    /**
     * 用户管理的使用-导出锁
     */
    public static final String IMPORT_POST_LOCK = "IMPORT_POST_LOCK#%s";

    /**
     * 格式化获取导入锁名称
     *
     * @param lockName 锁名
     * @param args     格式化参数
     * @return 导入锁名称
     */
    public static String getLockName(String lockName, String... args) {
        return String.format(lockName, args);
    }
}
